#include <iostream>
using std::cout;
using std::endl;
#define MAX(a, b) ((a) > (b) ? (a) : (b)) 

inline int max(int x, int y)
{
	return x > y ? x : y;
}

void test0(){
    //(20)>(10)?(20):(10) + 20
    int result = MAX(20,10) + 20;//result的值是多少？//20

    //(10)>(20)?(10):(20) + 20
    int result2 = MAX(10,20) + 20;//result2的值是多少？//40

    cout << result << endl;
    cout << result2 << endl;
}

void test1(){
    int i = 4,j = 3;
    //((i++) > j ? (i++) : j)
    int result = MAX(i++,j);//希望result = 4
    cout << result << endl; //5
    cout << i << endl; //6
}

void test2(){
    int i = 4,j = 3;
    int result = max(i++,j);//希望result = 4
    cout << result << endl; //4
    cout << i << endl; //5
}
int main(void){
    test2();
    return 0;
}
